module exportd; import hip.util.reflection; //ExportD import hip.math.api; import hip.graphics.g2d.animation; import hip.game.utils; import hip.hipaudio.audio; import hip.assetmanager; import hip.systems.timer_manager; import hip.filesystem.hipfs; import std.traits:ReturnType; mixin ExportMathAPI; mixin HipExportDFunctions!(hip.graphics.g2d.animation); mixin HipExportDFunctions!(hip.game.utils); mixin HipExportDFunctions!(hip.filesystem.hipfs); mixin HipExportDFunctions!(hip.hipaudio.audio); mixin HipExportDFunctions!(hip.assetmanager); mixin HipExportDFunctions!(hip.systems.timer_manager); ///ExportD doesn't work on function/delegate alias AssetDelegate = void delegate(IHipAsset); export extern(System) static void HipAssetManager_addOnCompleteHandler(IHipAssetLoadTask task, AssetDelegate onComplete) { HipAssetManager.addOnCompleteHandler(task, onComplete); }